//
//  UIDevice+JwDevice.h
//  JwPack
//
//  Created by 陈警卫 on 2024-07-31.
//

#import <UIKit/UIKit.h>

NS_ASSUME_NONNULL_BEGIN

@interface UIDevice (JwDevice)

/// 获取应用程序的显示名称。
+ (NSString *)jw_displayName;

/// 获取应用程序的Bundle ID。
+ (NSString *)jw_bundleID;

/// 获取应用程序的版本号。
+ (NSString *)jw_versionShort;

/// 获取应用程序的构建ID。
+ (NSString *)jw_buildID;

/// 获取设备的操作系统版本。
+ (NSString *)jw_systemVersion;

/// 获取设备的操作系统名称。
+ (NSString *)jw_systemName;

/// 获取设备的名称。
+ (NSString *)jw_devName;

/// 获取设备的型号。
+ (NSString *)jw_devModel;

/// 获取设备的本地化型号。
+ (NSString *)jw_localizedModel;

/// 计算并返回设备的总硬盘空间，以字节为单位。
+ (int64_t)jw_diskSpace;

/// 计算并返回设备的可用硬盘空间，以字节为单位。
+ (int64_t)jw_diskFreeSpace;

/// 计算并返回设备的已使用硬盘空间，以字节为单位。
+ (int64_t)jw_diskUsedSpace;

/// 获取设备的详细型号。
+ (NSString *)jw_phoneModel;

/// 获取一个字典，其中包含设备硬件标识符到设备型号名称的映射。
+ (NSDictionary *)jw_phoneGeneration;

@end

NS_ASSUME_NONNULL_END
